package br.edu.udc.sistemas.ia5.entity;

public class Cliente extends Pessoa {

	private String nome;
	private String cpf;
	private String rg;
	private String rua;
	private String numero;
	private String bairro;
	private String cidade;
	private String estado;
	private String cep;
	private String telefone;
	private String celular;
	private String email;	
	private String teste;	
	
	public Cliente(){}

	public String getCpf() {
		return this.cpf;
	}

	public void setCpf(String cpf) {
		this.cpf = cpf;
	}

	public String getRg() {
		return this.rg;
	}

	public void setRg(String rg) {
		this.rg = rg;
	}

	public String getNome() {
		return this.nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getRua() {
		return this.rua;
	}

	public void setRua(String rua) {
		this.rua = rua;
	}

	public String getNumero() {
		return this.numero;
	}

	public void setNumero(String numero) {
		this.numero = numero;
	}

	public String getBairro() {
		return this.bairro;
	}

	public void setBairro(String bairro) {
		this.bairro = bairro;
	}

	public String getCidade() {
		return this.cidade;
	}

	public void setCidade(String cidade) {
		this.cidade = cidade;
	}

	public String getEstado() {
		return this.estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}

	public String getCep() {
		return this.cep;
	}

	public void setCep(String cep) {
		this.cep = cep;
	}

	public String getTelefone() {
		return this.telefone;
	}

	public void setTelefone(String telefone) {
		this.telefone = telefone;
	}

	public String getCelular() {
		return this.celular;
	}

	public void setCelular(String celular) {
		this.celular = celular;
	}

	public String getEmail() {
		return this.email;
	}

	public void setEmail(String email) {
		this.email = email;
	}
	
	@Override
	public String toString() {
		return this.id + " - " + this.nome + " - " + this.cpf;
	}
	
	@Override
	public boolean equals(Object obj) {
		if (obj instanceof Cliente){
			Cliente clienteAux = (Cliente) obj;
			if (this.id == clienteAux.getId()){
				return true;
			}
		}
		return false;
	}

	@Override
	public String getTableName() {
		return "cliente";
	}

	@Override
	public String getIdName() {
		return "idcliente";
	}

	@Override
	public String getIdValue() {
		return String.valueOf(this.id);
	}

	@Override
	public String[] getFieldNames() {
		String names[] = new String[3];
		names[0] = "idcliente";
		names[1] = "nome";
		names[2] = "rua";
				
		return names;
	}

	@Override
	public String[] getFieldValues() {
		String values[] = new String[3];
		values[0] = String.valueOf(this.id);
		values[1] = this.nome;
		values[2] = this.rua;
		return values;
	}

	@Override
	public void setIdValue(String id) {
		try {
			this.id = Integer.parseInt(id);
		} catch (Exception e) {
			this.id = null;
		}		
	}

	@Override
	public void setFieldValues(String[] values) {
		try {
			this.id = Integer.parseInt(values[0]);
		} catch (Exception e) {
			this.id = null;
		}	
		this.nome = values[1];
		this.rua = values[2];
	}
}